package main.java.ensao.cryptography.rsamodule;

import java.math.BigInteger;

/**
 * Cette classe permet de définir les deux fonctions principales du cryptage et
 * decryptage selon RSA
 */
public class RSA {

	/**
	 * Méthode de cryptage
	 * 
	 * @param n
	 * @param e
	 * @param message
	 * @return
	 */
	public BigInteger cryptage(BigInteger n, BigInteger e, BigInteger message) {

		return message.modPow(e, n);
	}

	/**
	 * Méthode de décryptage
	 * 
	 * @param n
	 * @param d
	 * @param chiffre
	 * @return
	 */
	public BigInteger decryptage(BigInteger n, BigInteger d, BigInteger chiffre) {

		return chiffre.modPow(d, n);
	}

}
